API Usage Questions

  • Needs for API Usage:
  • When do they feel the need to look for a new API or to consider writing one from scratch
  • Do you directly start developing one? Or you search for it in web to see if something similar exists which would aid you?
  • How do you typically look for an API? (API needed for application development)? If there are several alternative APIs he could use, how do you select one?
  • What are some limitations do you currently face when looking for an API?
  • How does categorization help you to look for specific APIs that you need?

  • API Key

  • How do you prefer to use API Keys?

    • One API key for all APIs that you use (provided by the hosting platform)
    • One Key per API
  • API Catalogue

  • In API catalgue what information you are usually looking for about an API? how (text, icons, etc.)
  • DO you prefer to have actionable items in API catalogue? (e.g. bookmark/subscribe, rating, etc.)
  • What is your preference about grid and tabular view?

  • Free/Payable API:

  • Do you use private/paid API? If so how you follow up the usage?
  • When you are developing an API, do you usually make all the usage options available for free? or keep some features free and some payable?
  • For free APIs, what policy do you use for consumers to limit the number of calls they can make?

  • API Analytics

  • What statistical information about API usage is most important to you and Why? (e.g. No. of requests, response time, response rate, unique users, subscriptions,Last Access Time, usage by Resource (methods), usage by destination, Usage by users, Fault reports (in request calls) etc.)
  • (as an API owner) which of the above information do you think should be available to API consumers?
  • Do you want to see aggregrated information? or separate information for each API presented side by side?

  • API Lifecycle Management

  • What lifecycle phases do you usually use in your prototype management
  • how do you wish to make 2 versions of an API in the API catalogue? Or you simply update the first version and make it available for consumers?
  • What support do you usually provide for oldder versions of an API?

  • API Dashboard

  • What information would you like to see as overview about your API? Would you like some comparison to see how the usage has changed?
  • what is the timeframe they are normally looking at when interested in APi usage per time? For one year? For one week? Differences in consumption in different parts of the day (day vs night)?
  • How you determine if an API is up or not? Do you have any standard?
  • How would you determine a poor performing API? (downtime 50%?)? Does Response time also count?
    • How important it is to have a heatmap to see from which part of the world or which part of a country an API request has been generated?
  • API Profile

  • What information should an API include in its own profile page? (overview, feedback, owner & organization, documentation, statistics, history, backlog, etc.)
  • What type of details do you wish to see for API usage?

  • API Documentation and Editor

  • How do you look for API documentation? how you use the documentation after you use an appropriate one (e.g. directly making API calls from the documentation viewer)
  • Imagine that you have uploaded a Swagger file to this platform. Where and how would you prefer to make changes to it?
  • Would you find it valuable if you can download SDK / code snippets for an API? Which programming languages?

  • SQA Engineer Testing an API?

  • What aspects of an API do you usually test?
  • How you determine if an API is up or not? Do you have any standard?
  • How do you ensure the reliability of an API?
  • API Documentation: Do you try to edit it? or see how the API behaves with uploading new documentation files?

  • Sharing your Feedback

  • How do you think your APIs will be discovered? Would promotion in social media help?
  • Which is more preferable to you? sharing your API in a social media platform or in a developer/consumer forum for feedback and custom generated contents?